Word processing programs, desktop publishing applications, and other computer programs conventionally allow users to select different fonts for creating and printing documents. As the number of fonts has increased over the years, it has become more difficult for users to manage different fonts. Creative professionals, in particular, need to select from among a broad variety of typefaces and other stylistic options when creating documents, advertisements and the like. Although commercially available software packages typically include a nominal number of fonts with the price of the software, users must frequently pay extra money to install additional fonts on a computer.
Computers typically store fonts in separate files that can be added to or deleted from the computer system as desired. By installing additional font files on a computer, the operating system can make the fonts available to programs running on the computer. When a computer user wishes to use a font from within a word processing program, the program queries the operating system for a list of available fonts, including an image showing how each font will appear when used in the program. If a large number of fonts is installed on a single computer, the list of fonts can be unwieldy and difficult to manage. In particular, requiring that a user scroll through a list of thousands of fonts is inconvenient. Moreover, the operating system consumes additional memory to maintain information regarding the many different installed fonts.
One conventional approach for managing a large numbers of fonts on a single computer is shown in FIG. 1. A word processing program 101 interacts with an operating system 102 to “enumerate” fonts that are installed on the computer, and the font details are returned to the program 101. Installed fonts 103 may be stored in a font folder and a system registry database that maintains information regarding the fonts. A font installation program 104 can be used to add or delete fonts from the system.
In one conventional approach, a separate font manager application 106 is added to the basic system to configure fonts into separate groups, each of which can then be “activated” by a user. A separate font grouping database 105 stores information regarding a superset of available fonts arranged into groups (e.g., Font Group 1, Font Group 2), and the user operates font manager application 106 to create new groupings and activate a given font group.
When a font group is activated, font manager application 106 installs fonts from the activated group in the installed fonts database 103. When a font group is deactivated, font manager application 106 removes fonts from the installed fonts database 103. Thus, the operating system only maintains knowledge regarding a small subset of the total universe of fonts that can be installed on the computer, and when the user selects fonts from word processing program 101, the operating system returns information only for those fonts that are installed in the installed font database 103. One product that provides font management capabilities of the type shown in FIG. 1 is the Adobe Type Manager (ATM) Deluxe product sold by Adobe of San Jose, Calif. In an alternate variation of the scheme in FIG. 1, the font retrieval functions of the operating system are replaced with substitute functions that then reference fonts in a grouped database such as database 105 instead of the installed fonts.
Although the font management scheme illustrated in FIG. 1 has greatly simplified the tasks of creative professionals, several factors have led to the need for additional font management features.
Conventional word processing programs permit users to preview only one font in a particular font size at a time, making it difficult or impossible to compare different fonts on the same display. As shown in FIG. 2, for example, a conventional font selection dialog box 200 allows the user to select one font (e.g., Times New Roman) 201 from a list of fonts and one font size (e.g., 14 pt) from a list of font sizes, and a corresponding preview window or area 202 shows what that selected font in the specified font size will look like based on a predetermined sentence fragment (e.g., “The Quick Brown Fox . . . ”). In order to preview another font (or font size), the user must select a different font (or font size), which will then be previewed in the previewing area 202. Consequently, it is unwieldy to browse through a large number of fonts, and difficult or impossible to compare two different fonts and/or font sizes side by side. Similarly, the conventional font manager application 106 of FIG. 1 only permits the user to preview one font of one font size at a time.
The increasingly networked nature of computers, both in local area networks and as part of the Internet, has led to configurations under which different users in a collaborative setting (e.g., within a company) may have different and potentially conflicting fonts installed on their computers. Thus, for example, if two graphic artists within a corporation have each selectively activated different groups of fonts on their computers, when one artist sends a document to the other artist, the document may not be capable of being displayed on the second computer because of a non-activated font. Consequently, a need exists for resolving this problem.
Yet another problem relates to corrupted font files. Particularly in the Macintosh world, corrupted font files frequently lead to problems in creating and printing of documents. While some basic tests can be run on a suspect font file to determine whether the file is likely to be corrupted, such tests are limited in nature and cannot guarantee that a given file is corrupted or not. Once a user identifies a corrupted font file, he or she must manually replace the file with a trusted original file. Consequently, there is a need to simplify the process of detecting and repairing corrupted font files.
Finally, the fact that fonts are generally protected under copyright laws has led the creators of fonts to seek ways of limiting their unauthorized distribution. Although various encryption and copy protection schemes have been used in recent years to protect computer files, such schemes are difficult to implement for font files, which must typically be readily accessible to operating systems and application programs. If a networked computer user is able to freely share font files installed on one computer with other unauthorized users, the copyright owner may lose revenues due to lost potential sales. Accordingly, additional protection mechanisms are needed to protect the unauthorized use of large numbers of copyrighted font files.